Dersin Adı | Algoritma Tasarımı |
Kodu | Yarıyıl | Teori (saat/hafta) | Uygulama/Lab (saat/hafta) | Yerel Kredi | AKTS |
---|---|---|---|---|---|
CE 401 | Güz/Bahar | 3 | 0 | 3 | 5 |
Ön-Koşul(lar) |
| ||||||||
Dersin Dili | İngilizce | ||||||||
Dersin Türü | Seçmeli | ||||||||
Dersin Düzeyi | Lisans | ||||||||
Dersin Veriliş Şekli | - | ||||||||
Dersin Öğretim Yöntem ve Teknikleri | Problem çözmeAnlatım / Sunum | ||||||||
Dersin Koordinatörü | |||||||||
Öğretim Eleman(lar)ı | |||||||||
Yardımcı(ları) | - |
Dersin Amacı | Bu dersin amacı algoritmalara, kullanımlarını motive eden gerçek hayattaki problemlere bakarak tanıtmaktır. Öğrenciler bilgisayar uygulamalarında karşılacakları bir dizi tasarım ve analiz tekniklerini öğreneceklerdir. 'Greedy' algoritmalar, 'Divide & Conquer' tipi algoritmalar ve dinamik programlama farklı örnek uygulamalar ile ele alınacak. Bunların yanı sıra yaklaşım algoritmaları, yük dengeleme ve küme kapsama problemleri aracılığı ile işlenecektir. |
Öğrenme Çıktıları | Bu dersi başarıyla tamamlayabilen öğrenciler;
|
Ders Tanımı | Ders temel algoritma analizi, çizge kuramı konsepti, aç gözlü algoritmaları, böl ve yönet algoritmaları, dinamik programlama ve yakınsak algoritmaları kapsar. |
Dersin İlişkili Olduğu Sürdürülebilir Kalkınma Amaçları | |
| Temel Ders | |
Uzmanlık/Alan Dersleri | X | |
Destek Dersleri | ||
İletişim ve Yönetim Becerileri Dersleri | ||
Aktarılabilir Beceri Dersleri |
Hafta | Konular | Ön Hazırlık |
1 | Introduction: Some Representative Problems | Course Book; Chapter 1. |
2 | Basics of Algorithms Analysis | Course Book; Chapter 2. |
3 | Graphs | Course Book; Chapter 3. |
4 | Greedy Algorithms: Interval Scheduling | Course Book; Chapter 4. |
5 | Greedy Algorithms: Scheduling to Minimize Lateness | Course Book; Chapter 4. |
6 | Greedy Algorithms : Minimum-Cost | Course Book; Chapter 4. |
7 | Divide and Conquer: Counting Inversions | Course Book; Chapter 5. |
8 | Ara sınav | |
9 | Divide and Conquer: Integer Multiplication | Course Book; Chapter 5. |
10 | Divide and Conquer: Convolutions and The Fast Fourier Transform | Course Book; Chapter 5. |
11 | Dynamic Programming: Weighted Interval Scheduling | Course Book; Chapter 6. |
12 | Dynamic Programming: Subset Sums and Knapsacks | Course Book; Chapter 6. |
13 | Dynamic Programming: Sequence Alignment | Course Book; Chapter 6. |
14 | Approximation Algorithms: Load Balancing | Course Book; Chapter 11. |
15 | Dönemin gözden geçirilmesi | |
16 | Final sınavı |
Ders Kitabı | Algorithm Design, Jon Kleinberg, Éva Tardos, ISBN-10: 0321295358, ISBN-13: 9780321295354, Addison-Wesley, 2005. |
Önerilen Okumalar/Materyaller | Algorithms, Cormen, T.H., Liesersan, C.E. and Rivest, R.L. ISBN 0-01-013143-0, McGraw-Hill |
Yarıyıl Aktiviteleri | Sayı | Katkı Payı % |
Katılım | ||
Laboratuvar / Uygulama | ||
Arazi Çalışması | ||
Küçük Sınav / Stüdyo Kritiği | ||
Portfolyo | ||
Ödev | 1 | 30 |
Sunum / Jüri Önünde Sunum | ||
Proje | ||
Seminer/Çalıştay | ||
Sözlü Sınav | ||
Ara Sınav | 1 | 30 |
Final Sınavı | 1 | 40 |
Toplam |
Yarıyıl İçi Aktivitelerin Başarı Notuna Katkısı | 2 | 60 |
Yarıyıl Sonu Aktivitelerin Başarı Notuna Katkısı | 1 | 40 |
Toplam |
Yarıyıl Aktiviteleri | Sayı | Süre (Saat) | İş Yükü |
---|---|---|---|
Teorik Ders Saati (Sınav haftası dahildir: 16 x teorik ders saati) | 16 | 3 | 48 |
Laboratuvar / Uygulama Ders Saati (Sınav haftası dahildir. 16 x uygulama/lab ders saati) | 16 | ||
Sınıf Dışı Ders Çalışması | 14 | 4 | 56 |
Arazi Çalışması | |||
Küçük Sınav / Stüdyo Kritiği | |||
Portfolyo | |||
Ödev | 4 | 5 | |
Sunum / Jüri Önünde Sunum | |||
Proje | |||
Seminer/Çalıştay | |||
Sözlü Sınav | |||
Ara Sınavlar | 1 | 12 | |
Final Sınavı | 1 | 14 | |
Toplam | 150 |
# | Program Yeterlilikleri / Çıktıları | * Katkı Düzeyi | ||||
1 | 2 | 3 | 4 | 5 | ||
1 | Matematik, Fen Bilimleri ve Bilgisayar Mühendisliği konularında yeterli bilgi sahibidir; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanır. | X | ||||
2 | Karmaşık Bilgisayar Mühendisliği problemlerini saptar, tanımlar, formüle eder ve çözer; bu amaca uygun analiz ve modelleme yöntemlerini seçer ve uygular. | X | ||||
3 | Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlar; bu amaçla modern tasarım yöntemlerini uygular. | X | ||||
4 | Bilgisayar Mühendisliği uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirir, seçer ve kullanır; bilişim teknolojilerini etkin bir şekilde kullanır. | |||||
5 | Karmaşık Bilgisayar Mühendisliği problemlerinin veya araştırma konularının incelenmesi için deney tasarlar, deney yapar, veri toplar, sonuçları analiz eder ve yorumlar. | |||||
6 | Bilgisayar Mühendisliği disiplini içinde ve çok disiplinli takımlarda etkin biçimde çalışır; bireysel çalışma sergiler. | |||||
7 | Türkçe sözlü ve yazılı etkin iletişim kurar; etkin rapor yazar ve yazılı raporları anlar, tasarım ve üretim raporları hazırlar, etkin sunum yapar, açık ve anlaşılır talimat verir ve alır. | |||||
8 | Bilgisayar Mühendisliği uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi sahibidir; mühendislik çözümlerinin hukuksal sonuçlarının farkındadır. | |||||
9 | Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilincine sahiptir; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi sahibidir. | |||||
10 | Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi sahibidir; girişimcilik, yenilikçilik hakkında bilinçlidir; sürdürülebilir kalkınma hakkında bilgi sahibidir. | |||||
11 | Bir yabancı dili kullanarak Bilgisayar Mühendisliği ile ilişkili konularda, bilgi toplar ve meslektaşları ile iletişim kurar. ("European Language Portfolio Global Scale", Level B1) | |||||
12 | İkinci yabancı dili orta düzeyde kullanır. | |||||
13 | Yaşam boyu öğrenmenin gerekliliği bilincindedir; bilgiye erişir, bilim ve teknolojideki gelişmeleri izler ve kendini sürekli yeniler; insanlık tarihi boyunca oluşan bilgi birikimini Bilgisayar Mühendisliği alanıyla ilişkilendirir. |
*1 Lowest, 2 Low, 3 Average, 4 High, 5 Highest